As consumers have become increasingly comfortable with online shopping, many retailers of products offer a retail presence to take advantage of the ecommerce marketplace. Some online retailers offer products that can be customized or personalized based on user-selected choices or inputs, and/or customer-specific information. For example, the www.vistaprint.com web site offers printed, engraved, and embroidered products that can be customized by the customer to include text and images selected and/or uploaded by the customer. For such online retailers, many of the images on the web site and on marketing materials are devoted to showing content on products, and products in context.
For example, a preview of a customer's selected design personalized with information entered by the customer may be presented to a customer selecting customizations and/or personalizing it with user-entered text and/or uploaded images. Besides merely showing the design imprinted, engraved, or embroidered on the product, a good preview might also show the product in context, for example within a larger scene. Previews of the customized products assist the customer in determining where the content is going to be placed, how large the product is, and/or how the product might fit their needs.
Contextual scenes can be created as composite images, for example using Adobe® Photoshop. Photoshop can be used to layer images on top of one another, rotate, warp, and blend images. However, when the composite image is saved using Photoshop, it is saved as a static image and cannot accept dynamically generated content. Online retailers who wish to show images with dynamically generated content, for example for showing images of products personalized with customer information, need to be able to generate customized images and place them within a larger scene on the fly without significant delay in order to prevent or reduce customer drop-off during the browsing process.
In the past, in order to generate previews in context, each context image was implemented as a separate class and had its own unique and static way of drawing itself. Each context image is independently coded by a human programmer in a browser-renderable language (such as HTML, DHTML, etc.), and then dynamically-generated content is rendered by the browser together with the context image. Generating browser-renderable context images in this way requires significant coding time due to having to code each scene image as its own individual class.
Accordingly, it would be desirable to have a streamlined process and system that allows simple specification of descriptions of scenes and the rendering of those scenes for quickly generating dynamically-generated content within contextual scenes without having to define and code a separate class for each scene image. It would further be desirable to inject personalized customer images into contextual scenes using the process and system. It would further desirable to dynamically generate personalized web pages and emails containing the personalized scenes. It would still further be desirable to utilize such technique to inject images of suggested or previously ordered personalized products into scenes and to provide in the email message or web page the ability for the customer to quickly order or reorder more of such products.